Skip to main content
Version: 1.11.x

v1.11.0

Release Date

July 27, 2026

ROCK v1.11 expands sandbox runtime choices, introduces configurable lifecycle automation and a unified job workflow, and improves sandbox observability and Admin reliability. It also adds asynchronous image commits, persistent OpenSandbox sessions, and Windows filesystem support in the Python SDK.


Highlights

  • Configurable lifecycle automation: Persist deadlines for automatic stop, archive, and delete transitions. Status responses expose auto_stop_time, auto_archive_time, and auto_delete_time; cluster policy can cap per-sandbox delays and configure archived-sandbox retention (#1264).

  • OpenSandbox backend: Add an opensandbox Operator backend and route command execution, file operations, status queries, HTTP/WebSocket services, and persistent shell sessions through the official OpenSandbox SDK. Session mappings are stored in Redis so they remain consistent across Admin workers (#1203, #1233, #1262).

  • Unified job workflow: Extend rock job run to support one task, multiple tasks, or an entire dataset. Add persisted run/job metadata, concurrent execution, resumable runs, OSS-backed JobViewer, and run-aware query commands (#1235).

  • Asynchronous sandbox image commits: Proxy-mode image commit and push now run asynchronously through Rocklet. The Python and TypeScript SDKs can poll commit progress, while the legacy Admin API remains synchronous (#1280).

  • Windows filesystem support: Select a Windows-specific filesystem client for Windows sandbox images, including ownership and permission handling, directory upload, binary-safe download, and PowerShell output handling (#1297).


Sandbox and Admin

New Features

  • Default new sandbox requests to a 50G disk quota; callers can explicitly use None to fall back to the cluster default (#1226).

  • Return num_gpus and accelerator_type in sandbox status responses through direct, proxy, and OpenSandbox paths (#1286).

  • Allow runtime.max_allowed_spec to be updated dynamically from Nacos while preserving unspecified YAML values (#1291).

  • Add scheduler health, registration, worker-cache, task-run, duration, and failure metrics for automatic tasks (#1254).

  • Add configurable exception traceback logging for Admin and other ROCK processes (#1261).

  • Add proactive Ray client health checks and serialized reconnection when the current client session is closed or unresponsive (#1256).

  • Use per-worker SO_REUSEPORT listeners to improve multi-worker Admin startup (#1267).

Bug Fixes

  • Preserve cached phases while a sandbox remains pending, and prevent pending → running until the runtime reports the sandbox as alive (#1239, #1247).

  • Populate the effective disk value in sandbox start responses (#1258).

  • Tolerate partial Docker inspect failures when collecting sandbox status (#1282).

  • Immediately expire failed Ray submissions, clean up timed-out scheduling, and terminate the actor if metadata retrieval fails (#1284, #1288).

  • Refresh start_time after restarting a stopped sandbox (#1289).

  • Improve deleted-sandbox handling by archiving remaining logs, releasing resource reservations, making Ray deletion idempotent, and returning delete_time in status responses (#1295).


Kubernetes

New Features

  • Add Nacos-driven template_rules selection. Rules are evaluated in declaration order and can match image patterns, image OS, GPU-count ranges, and accelerator types; an explicit template in extended_params remains highest priority (#1274).

  • Transport encrypted image-registry credentials to Kubernetes sandbox workloads (#1130).


SDK and CLI

New Features

  • TypeScript SDK: Add Sandbox.archive(), disk configuration, typed lifecycle states, state-transition history, and disk fields in status responses (#1241).

  • Python and TypeScript SDKs: Allow verifier environment variables through VerifierConfig.env (#1220).

Bug Fixes

  • TypeScript SDK: Correct nohup process-completion detection, run long OSS operations in nohup mode, verify transfer size, and fix first-time ossutil installation (#1224).

Upgrade Notes

  • Database schema: Lifecycle automation adds sandbox_record.auto_transition_state, sandbox_record.auto_transition_time, and the ix_sandbox_record_state_auto_transition index. Apply the corresponding schema update before enabling automatic transitions.

  • AES key configuration: aes_encrypt_key is now loaded exclusively from the top level of the static ROCK YAML configuration. It is no longer read from Nacos or proxy_service.aes_encrypt_key (#1268).

  • Lifecycle configuration: Remove the obsolete lifecycle.auto_transition.auto_archive_seconds cluster setting before upgrading. Per-sandbox auto_archive_seconds controls archive timing; cluster auto_delete_seconds acts as a default, delay cap, and cleanup grace period, while auto_delete_archived_seconds controls archive retention (#1264).

  • Kubernetes template selection: Migrate deployments that rely on k8s.template_map or implicit GPU template names to Nacos template_rules. Without an explicit template or matching rule, ROCK uses the default template (#1274).


Full comparison: v1.10.0...master